package com.bw.car.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.bw.car.domain.Car;
import com.bw.car.domain.OutIn;
import com.bw.car.vo.CarVO;

public interface CarMapper {
     //1增加车辆表
	int insert(Car  car);
	//2增加现存车辆表
	int insertStore(@Param("cid")Integer cid,@Param("inTime") String inTime,@Param("cno") String cno);
	 //3增加出入库记录表
	int insertOutIn(@Param("cid")Integer cid,@Param("inTime") String inTime);
	
	
	//通过车牌查询是否在现存库存表中
	int selectByCno(String cno);
	/**
	 * 
	 * @Title: selects 
	 * @Description: TODO
	 * @param car
	 * @return
	 * @return: List<Car>
	 */
	List<Car> selects(Car car);
	/**
	 * 
	 * @Title: getCarInfo 
	 * @Description: TODO
	 * @param cno
	 * @return
	 * @return: Car
	 */
	Car getCarInfo(String cno);
	/**
	 * 
	 * @Title: getMoneyByCid 
	 * @Description: 查询汽车应交费用
	 * @param cid
	 * @return: void
	 */
	int getMoneyByCid(Integer cid);
	/**
	 * 
	 * @Title: deleteStoreById 
	 * @Description: 根据id删除汽车库存
	 * @param id
	 * @return: void
	 */
	void deleteStoreById(Integer id);
	/**
	 * 
	 * @Title: getLastOne 
	 * @Description: 取出某个车辆最后一次进入的记录
	 * @param cid
	 * @return
	 * @return: OutIn
	 */
	OutIn getLastOne(Integer cid);
	/**
	 * 
	 * @Title: updateOutIn 
	 * @Description: TODO
	 * @param lastOne
	 * @return: void
	 */
	void updateOutIn(OutIn lastOne);
	/**
	 * 
	 * @Title: getReport 
	 * @Description: 报表
	 * @param carVO
	 * @return
	 * @return: List<OutIn>
	 */
	List<OutIn> getReport(CarVO carVO);
}
